
#1、检测是否重复提交页面
if( isset( $_POST['hidden'] ) ){

	#检测表单内容是否有效
	if( false == $picker->checkFormValid( $_POST ) ){
		echo "请重新选择<br>";
		die();
	}

	#获取当前采集器的规则
	$thePkerRule = $picker->getPickerRule( $_POST['picker'] ); 

	#判断列表页是否有分页
	if( 0 == substr_count( $thePkerRule['list'] , '[*]' ) ){
		#没有分页，则只采集当前页面
		@$theContent = do_pick_since_list( $picker , $thePkerRule );

	}else{
		#存在分页，循环处理每一个列表页面
		for( $lNum = 0; $lNum < $_POST['times'] ; $lNum++ ){
			#跳转到实际采集函数中
			@$theContent[] = do_pick_since_list( $picker , $thePkerRule , str_replace( '[*]' , $lNum, $thePkerRule['list'] ) );	
		}
		
	}

}else{
	#页面刷新、重复点击提交检测
	echo "重复提交页面<br>";
}

/**
* @name   do_pick_since_list  从列表页开始执行采集工作
* @param  obj    picker  已声明的采集器对象
* @param  array  pkRule  当前采集器所包含的全部规则
* @param  string curLst  当前要处理的列表页，在无分页情况下可忽略
* @return array  theCtt  采集到的最终内容
* @todo   添加采集结果的优化函数
*/
function do_pick_since_list( $picker , $pkRule = array() ， $curLst = '' ){
	#判断是否有分页
	if( 0 == strlen( $curLst ) ){
		$curLst = $pkRule['list'];
	}

	#通过列表页链接抓取列表页内容
	$theLstPgCtt = $picker->getPageCttByCurl( $curLst );

	#通过采集到的列表页内容，从中匹配文章页链接
	$artLnkOfLst = $picker->getLstPageArtUrl( $theLstPgCtt , $pkRule['list_tag'] , $pkRule['url'] );

	#循环遍历所有采集到的文章链接
	foreach ( $artLnkOfLst as $artLnk ) {
		#先判断是否已经采集过,采集过就跳出循环
		if( $picker->is_picked_by_url( $artLnk ) ){
			continue;
		}

		#获取每篇文章页面的标题和内容,获取二维结果数组,每循环一次立即存储
		$theCtt = $picker->getArtPgInfo( $artLnk , $pkRule['title'] , $pkRule['content'] );

		#计算标签，关键词，向量
		$theTags     = $picker->getTags( $theCtt[0] , $theCtt[1] );
		$theKeywords = $picker->getKeywords( $theCtt[0] , $theCtt[1] ); 
		#直接调用common_word中的函数，来计算文章的向量
		$theVector   = get_question_vector( $theCtt[0] , $theCtt[1] );

		#合并数据库数组
		$savableArtArr = array( 
			'title'   => $theCtt[0],
			'summary' => $theCtt[1],
			'tags'    => $theTags,
			'keyword' => $theKeywords,
			'url'     => $artLnk,
			#'picker'  => $picker, 暂时隐藏采集器编号
			'vector'  => $theVector,
		);

		#存入数据库
		if( save_article( $savableArtArr ) ){
			echo "<<<<<<<<<插入成功>>>>>>>><br>";
			continue;
		}else{
			echo ">>>>>>>>插入失败<<<<<<<<<<br>";
			continue;
		}
	}
	echo "采集结束<br><hr>";
	return true;

}

/**
* @name   save_article   保存采集到的文章
* @param  array   artInfo
* @return boolean 
*/
function save_article( $artInfo = array() ){
	global $wpdb;

	return $wpdb->insert( 'wp_article' , $artInfo );
}